#1.字符串的格式化问题
# 我叫xxx，我住在xxxx，我今年xx岁，我喜欢做xxxxX
"""
name=input("Enter your name:")
address=input("Enter your address:")
age=int(input("Enter your age:"))
hobby=input("Enter your hobby:")
"""


# %s 字符串占位   %d 占位整数   %f 占位小数
# {} .format  占位符
# f-string 占位符

"""
s="我叫%s,我住在%s,我今年%d岁,我喜欢%s" %(name,address,age,hobby)
s1="我叫{},我住在{},我今年{}岁,我喜欢{}" .format(name,address,age,hobby)
s2=f"我叫{name},我住在{address},我今年{age}岁,我喜欢{hobby}"
"""


"""
print(s)
print(s1)
print(s2)
"""

#2.索引和切片
#索引：按照位置提取元素

# s="我是吴彦祖，你是谁？"
#可以采用索引的方式来提取某一个字符（文字）

# print(s[0])
# print(s[-1]) #表示反着取   （倒数）

#切片：从一个字符串中提取一部分内容
#语法： 直接当成数组 取前不取后
# : 如果左右两端有空白，表示开头或者结尾  [1:] 表示从下标1到结尾
# s[start,end,step] 每隔step位置取

"""
print(s[0:5])
print(s[0:])
print(s[:])
"""

#3.字符串常规操作
# 字符串的操作一般不会对原字符串产生影响。一般是返回一个新的字符串
# 3.1 字符串大小写转换

"""
s="python"
s1 =s.capitalize() #Python 打印   单词首字母大写
print(s1)

s2=s.lower() #字母变小写
print(s2)

s3=s.upper() #字母变大写
print(s3)

"""
#忽略大小写
"""
verify_code="abcD"
inputCode=input(f"请输入验证码({verify_code}):")
if inputCode.upper()==verify_code.upper():
    print("验证码正确")
else:
    print("验证码错误")

"""
#3.2 替换和切割（*）

#strip()  去掉字符串左右两端的空白符（空格，\t）

s=" 我叫， 吴彦祖    "
s1=s.strip()
print(s1)


#这里假如输入的账户名或者密码中间有空格，则登录失败

"""
username=input("Enter your name:").strip()
password=input("Enter your password:").strip()
if username =="admin":
    if password == "123456":
        print("登录成功")
    else:
        print("登录失败")
else:
    print("登录失败")
"""

#replace(old,new)字符串替换
"""
string="你好啊，   我是吴彦祖"
string1 =string.replace("吴彦祖","彭于晏")
string2 =string.replace(" ","") #去掉所有空格
print(string1)
print(string2)
"""

#split(用什么切割) 字符串切割，用什么切割，就会损失谁
"""
a="python_java_go_c_javascript"
list=a.split("_") #切割后的结果会存放在列表中
print(list)

"""


#3.4 查找和判断
#查找
data="你好，我是吴彦祖"
newData=data.find("吴彦祖")
print(newData+1)

result=data.find("吴彦祖123")
print(result) #找不到返回 -1

#补充
#len() 长度   join()和split反着意思，将列表中的元素  通过什么  连起来
list = ['a','b','c','d','e','f']
newList="_".join(list)
print(newList) #a_b_c_d_e_f


